#ifndef VSETTINGS_H
#define VSETTINGS_H

#include <QWidget>
#include <QLabel>
#include <QPushButton>
#include <QSlider>
#include <QLineEdit>
#include <QFormLayout>
#include <QHBoxLayout>
#include <QVBoxLayout>
#include <QCheckBox>
#include <phonon/VolumeSlider>
#include <QRadioButton>
#include <QIcon>

#include "../Controlers/CSounds.h"
#include "../Controlers/CSettings.h"
#include "../Models/MPictures.h"
#include "../Controlers/CDesign.h"

class VSettings : public QWidget
{
    Q_OBJECT

private:
    QLabel *label_title;
    QLabel *label_volume;
    QLabel *label_hostname;
    QLineEdit *edit_hostname;
    QPushButton *button_accept;
    QPushButton *button_cancel;
    QPushButton *button_mute;
    QHBoxLayout *layout_hori_button;
    QHBoxLayout *layout_hori_hostname;
    QHBoxLayout *layout_hori_volume;
    QHBoxLayout *layout_hori_radio_grass;
    QHBoxLayout *layout_hori_radio_iron;
    QHBoxLayout *layout_hori_radio_sand;
    QVBoxLayout *layoutp;
    QRadioButton *radio_grass;
    QRadioButton *radio_iron;
    QRadioButton *radio_sand;
    QCheckBox *checkbox_show_hud;
    QSlider *volume_event;
    QIcon *icon;

    int clicked_mute;

    CSettings *c_settings;

public:
    VSettings();
    ~VSettings();

    void closeEvent(QCloseEvent *e);

signals:
    void close_window();
    
public slots:
    void save_settings();
    void abort_changes();
    void mute();
    void change_volume_event(int volume);
    void update_theme();
};

#endif // VSETTINGS_H
